Алгоритм максимінної відстані

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
КН
Кафедра:
Системи автоматизованого проектування

Інформація про роботу

Рік:
2009
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Системи штучного інтелекту

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” ІНСТИТУТ КОМП’ЮТЕРНИХ НАУК ТА ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ Кафедра “Системи автоматизованого проектування”  ЗВІТ до лабораторної роботи №2 на тему «Алгоритм максимінної відстані» з курсу «Системи штучного інтелекту» 1.Мета роботи Вивчити принципи роботи максимінного алгоритму розпізнавання образів. Написати програму реалізації алгоритму з графічним інтерфейсом користувача. 2. Короткі теоретичні відомості 2.1. Максимінний алгоритм розпізнавання образів Алгоритм використовує евклiдову вiдстань. Алгоритм, у принципi, аналогiчний схемi евристичного алгоритму порогової величини, за виключенням тiєї обставини, що, в першу чергу, вин виявляє найвiддаленiшi кластори. Один з об'єктiв (X1) довiльним чином назначається центром першого кластера. Потiм вiдшукується образ, розмiщений вiд образа X1 найдалi, який призначається центром кластера Z2. На третьому кроцi алгоритму здiйснюється обчислення вiдстаней мiж всiма iншими образами вибiрки i центрами кластерiв Z1 i Z2. В кожнiй парi цих вибірок вибирається мiнiмальне. Пiсля цього видiляється максимальне з цих мiнiмальних вiдстаней. Якщо останнє складає значну частину вiдстанi мiж кластерами Z1 i Z2 (половина цiєї вiдстанi), вiдповiдний образ призначається центром кластера Z3. Iнакше - виконання алгоритму припиняється. В загальному випадку описана процедура повторюється до тих пiр, поки на якомусь кроцi не буде отримане максимальне значення вiдстанi, для якої умова, що викликає видiлення кластера, не виконується. ( 1. Z1=X1 2. Обчислити Di1 3. Вибрати Ki(1)=max{Di1} ( i(1 ; L1=Ki(1) ( 4. Z2=Xi 5. Обчислити Di1, Di2 ( i(1,2 6. Обчислити Ai=min{Di1,Di2} ( i(1,2 7. Обчислити Ki(2)=max{Ai} ( i(1,2 ; L2=Ki(2) ( 8. Якщо L2>0.5L1, тодi Z3=Xi. Iнакше - STOP. 9. Визначити середню арифметичну величину попереднiх максимальних вiдстаней: Lc.a.=(L1+L2)/2 10. Обчислити Di1, Di2, Di3 ( i(1,2,3 11. Обчислити Ai=min{Di1, Di2, Di3} 12. Обчислити Ki(3)=max{Ai} ; L3=Ki(3) ( 13. Якщо Li>0.5La.c., тодi Z4=Xi. Iнакше - STOP. 14. Обчислити Lc.a.=(L1+L2+L3)/3 Індивідуальне завдання N 2  0 1  0 2  0 3  4 1  5 1  5 2  5 3  6 9  8 6  9 2  9 5  9 6  9 7  10 1  10 2  10 3  11 3   Текст програми: Program Laba_1; Uses CRT; const q = 17 ; type dis = record v:array [1..q] of real; end; var x : array [1..q] of integer; y : array [1..q] of integer; j,i,k:integer; n:array [1..q] of integer; d: array [1..q] of dis; ser:real; t:string; min:array [1..q] of real; dmax_Z:array[1..q] of real; centre: array [1..q] of integer; centrex: array [1..q] of integer; centrey: array [1..q] of integer; xg:real; Label next,quit; BEGIN clrscr; writeln; x[1]:= 0 ; y[1]:=1;x[2]:= 0 ; y[2]:=2; x[3]:= 0 ; y[3]:=3;x[4]:= 4 ; y[4]:=1; x[5]:= 5 ; y[5]:=1;x[6]:= 5 ; y[6]:=2; x[7]:= 5 ; y[7]:=3;x[8]:= 6 ; y[8]:=9; x[9]:= 8 ; y[9]:=6;x[10]:=9 ; y[10]:=2; x[11]:=9 ; y[11]:=5;x[12]:=9 ; y[12]:=6; x[13]:=9 ; y[13]:=7;x[14]:=10; y[14]:=1; x[15]:=10; y[15]:=2;x[16]:=10; y[16]:=3; x[17]:=11; y[17]:=3; t:=' '; textcolor(8); writeln; n[1]:=1; centre[1]:=1; centrex[1]:=x[1]; centrey[1]:=y[1]; textcolor(14); writeln(' Z1(',centrex[1],';',centrey[1],')'); textcolor(15); For i:=1 to q do begin if i<10 then write(' x',i,' (',x[i],';',y[i],')',' ') else if i=12 then write(' x',i,'(',x[i],';',y[i],')',' ') else write(' x',i,'(',x[i],';',y[i],')',' '); d[1].v[i]:=sqrt(sqr((centrex[1]-x[i]))+sqr((centrey[1]-y[i]))); writeln(d[1].v[i]:2:1); end; dmax_z[1]:=d[1].v[1]; centre[2]:=1; For i:=1 to q do if d[1].v[i]>dmax_z[1] then ...
Антиботан аватар за замовчуванням

17.07.2020 10:07

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини